using System;
using System.Collections.Generic;
using EP.Base.BaseService.Manager.Model.Entity;

namespace EP.Base.BaseService.Manager.Interface.Data
{    
	/// <summary>
    /// IndexConfig 接口
    /// </summary>
     public interface IIndexConfigs
    {

		/// <summary>
		/// 添加IndexConfig
		/// </summary>
		/// <param name="indexconfig"></param>
		/// <returns></returns>
		int Add(IndexConfig indexconfig);
		/// <summary>
       /// 修改IndexConfig
       /// </summary>
       /// <param name="indexconfig"></param>
       /// <returns></returns>
       int Update(IndexConfig indexconfig);
		/// <summary>
		/// 根据id获取IndexConfig
		/// </summary>
		/// <param name="id"></param>
		/// <returns></returns>
		IndexConfig Get(int id);
		/// <summary>
		/// 根据id删除IndexConfig
		/// </summary>
		/// <param name="id"></param>
		/// <returns></returns>
		Int32 Delete(int id);
		/// <summary>
		/// 根据ids删除IndexConfig多条记录
		/// </summary>
		/// <param name="ids"></param>
		/// <returns></returns>
		Int32 Deletes(int[] ids);
		/// <summary>
       /// 获取IndexConfig分页列表
       /// </summary>
       /// <param name="pageIndex">页码</param>
       /// <param name="pageSize">每页显示条数</param>
       /// <param name="beginTime">开始时间</param>
       /// <param name="endTime">结束时间</param>
       /// <param name="recordCount">总记录数</param>
       /// <returns>IndexConfig列表</returns>
       List<IndexConfig> GetPageList(int pageIndex, int pageSize, DateTime? beginTime, DateTime? endTime, out int recordCount);
	  
		/// <summary>
		/// 获取所有IndexConfig
		/// </summary>
		/// <returns></returns>
		List<IndexConfig> GetAll();
    }
}
